#include <iostream>
#include <stack>
#include <vector>
#include <list>
#include <math.h>
#include <cstdlib>
#include "calculate.h"
using namespace std;
int main(){
    /**
     * @brief 本人使用的测试算例（由于以直接输入的方式不太方便，所以以注释的方式呈现)
     * 2^(1+3)-5*(15.23)/(1+2)*3-5
        1.25+(3*(1+2^2)*3-43)^(4-2)
        2^(1+3))-5*(15.23)/(1+2)*3-5
        2^(1+3)-5*(15.23)/(1-1)*3-5
        2^((1+3)-5*(15.23)/(1+2)*3-5
        (-(2+3))——在最外层套括号
        -3*4^(6-3)——负号在最前面
        ?123——非法运算符
        -(-(3-5))
     * 
     */
    pushstack();

    for(int i=1;i<=flag;i++){
        if(flag2[i]==0){
            cout<<n[i];
        }else{
            cout<<c[i];
        }   
    }
    cout<<"="<<num.top();
    return 0;
}